Memory devices are typically provided as internal, semiconductor, integrated circuits and/or external removable devices in computers or other electronic devices. There are many different types of memory including random-access memory (RAM), read only memory (ROM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), flash memory, and resistive (e.g., resistance variable) memory, among others. Types of resistive memory include programmable conductor memory, phase change random access memory (PCRAM), resistive random access memory (RRAM), magnetoresistive random access memory (MRAM; also referred to as magnetic random access memory), and conductive-bridging random access memory (CBRAM), among others.
Memory devices can be utilized as volatile and non-volatile memory for a wide range of electronic applications in need of high memory densities, high reliability, and low power consumption. Non-volatile memory may be used in, for example, personal computers, portable memory sticks, solid state drives (SSDs), personal digital assistants (PDAs), digital cameras, cellular telephones, portable music players (e.g., MP3 players) and movie players, among other electronic devices. Data, such as program code, user data, and/or system data, such as a basic input/output system (BIOS), are typically stored in non-volatile memory devices.
Resistive memory such as RRAM includes resistive memory cells that can store data based on the resistance state of a storage element (e.g., a resistive memory element having a variable resistance). As such, resistive memory cells can be programmed to store data corresponding to a target data state by varying the resistance level of the resistive memory element. Resistive memory cells can be programmed to a target data state (e.g., corresponding to a particular resistance state) by applying sources of an electrical field or energy, such as positive or negative electrical pulses (e.g., positive or negative voltage or current pulses) to the cells (e.g., to the resistive memory element of the cells) for a particular duration.
One of a number of data states (e.g., resistance states) can be set for a resistive memory cell. For example, a single level cell (SLC) may be programmed to one of two data states (e.g., logic 1 or 0), which can depend on whether the cell is programmed to a resistance above or below a particular level. As an additional example, various resistive memory cells can be programmed to one of multiple different resistance states corresponding to multiple data states. Such cells may be referred to as multi state cells, multi-digit cells, and/or multilevel cells (MLCs), and can represent multiple binary digits of data (e.g., 10, 01, 00, 11, 111, 101, 100, 1010, 1111, 0101, 0001, etc.).
In the case of various resistive memory cells, such as RRAM cells, a “forming” process can be performed to initiate the resistive switching property of the cell (e.g., of the resistive storage element of the cell). The forming process can be referred to as an electroforming process and can include formation of an initial conductive filament, which can serve as a switching element for the cell. Such a forming process can be performed on virgin cells (e.g., to initialize cells which have yet to experience set/reset operations) and/or on “tail bits” associated with formation free cells (e.g., resistive cells that may not require a forming process to initialize a bistable switching capability).
Various previous forming processes can have a number of drawbacks. For instance, various previous forming processes can include application of an electrical pulse having a duration and/or amplitude that can stress (e.g., electrically stress) the cell, which can decrease the ability to switch the data state (e.g., resistance level) of the cell during subsequent programming operations. Further, such previous forming approaches can lead to relatively small resistance switching windows (e.g., a relatively small difference between a high resistance state and a low resistance state), for example.